/***************************************************************
*  Copyright (c) 2007 by GroupMe! Team (www.groupme.net)
*  All rights reserved
*
*  This file is part of the GroupMe! Project. You can utilize
*  software of the GroupMe! project under the terms of the 
*  GNU Lesser General Public License as published by the
*  Free Software Foundation in version 2.1.
* 
*  The GNU Lesser General Public License can be found at:
*  http://www.gnu.org/licenses/lgpl.html
*
*  This copyright notice MUST APPEAR in all copies of the file!
***************************************************************/
package net.groupme.gui.constants;

import net.groupme.model.Identifiable;
import net.groupme.model.ObjectFactoryProperties;


/**
 * 1.0, created on 18/06/2007 
 * 
 * This class difines some constants like parameter names etc. which are used for 
 * communication between the view and the controller.
 * 
 * @author  Fabian Abel, <a href="mailto:abel@l3s.de">abel@l3s.de</a>
 * @version $Revision: 1.51 $ $Date: 2009-04-22 18:28:55 $ - last edited by: $Author: fabian $ 
 *
 */
public class VIEW_VOCABULARY {
	
	/** The Web URL of the GroupMe! Application */
	public static final String GROUPME_BASE_URL = ObjectFactoryProperties.getString("basegroupmeURL"); //$NON-NLS-1$

	/* PARAMETER NAMES */
	
	/** name of the parameter that defines the action a user wants to perform*/
	public static final String PARAMETER_ACTION = "action";
	
	/** name of the parameter that defines the view shown*/
	public static final String PARAMETER_VIEW = "view";
	
	/** page to redirect to */
	public static final String PARAMETER_REDIRECT = "redirect";

	/* User */
	
	/** The standard user icon (if the user has not specified any other icon) */
	public static final String STANDARD_USER_ICON = GROUPME_BASE_URL + "images/smily-user-icon.jpg";
	
	/** name of the parameter that contains the username (e.g. for login) */
	public static final String PARAMETER_USERNAME = "username";
	
	/** name of the parameter that contains the user's password (e.g. for login) */
	public static final String PARAMETER_PASSWORD = "password";
	
	/** name of the parameter that contains the user's retyped-password (e.g. during registration) */
	public static final String PARAMETER_RE_TYPED_PASSWORD = "passwordb";
	
	/** name of the parameter that contains the user's first name (e.g. during registration) */
	public static final String PARAMETER_FIRST_NAME = "firstName";
	
	/** name of the parameter that contains the user's last name (e.g. during registration) */
	public static final String PARAMETER_LAST_NAME = "lastName";
	
	/** name of the parameter that contains the user's email (e.g. during registration) */
	public static final String PARAMETER_EMAIL = "email";
	
	/** name of the parameter that contains the url of the user's FOAF file (e.g. during registration) */
	public static final String PARAMETER_FOAF = "foafDocumentURL";
	
	/** name of the parameter that contains the photo of the user (e.g. during registration) */
	public static final String PARAMETER_PHOTO = "photo";
	
	/* Identifiable */
	
	/** name of the parameter that contains the name of a group/resource/.. ({@link Identifiable}) */
	public static final String PARAMETER_NAME = "name";
	
	/** name of the parameter that contains the description of a group/resource/.. ({@link Identifiable}) */
	public static final String PARAMETER_DESCRIPTION = "description";
	
	/** name of the parameter that contains the ID of a group/resource/..  */
	public static final String PARAMETER_ID = "id";
	
	/* Search */

	/** name of the parameter that contains the keyword (e.g. search string) entered by a user  */
	public static final String PARAMETER_KEYWORD = "keyword";
	
	
	/** name of the parameter that contains a String which indicates what the user wants to search (e.g. Groups/Resources/Users) */
	public static final String PARAMETER_SEARCH_FOR = "searchfor";
	
	/** the value of this parameter indicates wheather to search for all keywords (AND-connected) or
	 * for any of the specified keywords (OR-connected)  */
	public static final String PARAMETER_SEARCH_FOR_ALL = "andsearch";
	
	/** if this parameter is set <code>true</code> then it indicates that the user has
	 *  clicked on a tag in order to search */
	public static final String PARAMETER_TAG_SEARCH = "tagsearch";
	
	/** this parameter indicates that a user wants to filter a search result list to return only a certain resource type*/
	public static final String PARAMETER_FILTER_RESOURCETYPE = "filter";
	
	/** if this parameter is set <code>true</code> then it indicates that the user performs a free search */
	public static final String PARAMETER_FREE_SEARCH = "freesearch";
	
	/** this parameter indicates which view should be shown on myhome */
	public static final String PARAMETER_MYHOME_VIEW = "myhome";
	
	/** this parameter indicates the order a list should be sorted*/
	public static final String PARAMETER_SORT = "sort";
	
	/** url a user wants to add */
	public static final String PARAMETER_URL = "url";
	
	/** title of the resource the user wants to add */
	public static final String PARAMETER_TITLE = "title";
	
	/** tags that are submitted to a Controller */
	public static final String PARAMETER_TAGS = "tags";
	
	/** single tag that is submitted to a Controller */
	public static final String PARAMETER_TAG = "tag";
	
	/** the group (id) to which a resource should be added */
	public static final String PARAMETER_GROUP = "group";
		
	/** the queue is a special group. It may contain resources that should be added to groups in the future */
	public static final String GROUP_QUEUE = "queue";
	
	/** this parameter may contain an error message... */
	public static final String PARAMETER_ERROR_MESSAGE = "errormessage";
	
	/* Game */
	
	/** the game (id) which a User wants to join */
	public static final String PARAMETER_GAME_ID = "gameId";
	
	/** the game topic which a User wants to create */
	public static final String PARAMETER_GAME_TOPIC = "gameTopic";
	
	/** Indicates if the User is the creator or the opponent */
	public static final String PARAMETER_GAME_PLAYER = "playerType";
	
	/** The name of the creator of the game */
	public static final String PARAMETER_GAME_CREATOR = "creatorName";
	
	/** The name of the teammate of the game */
	public static final String PARAMETER_GAME_OPPONENT = "opponentName";
	
	/** The score for resources */
	public static final String PARAMETER_GAME_SCORE_RESOURCES = "resourcesScore";
	
	/** The score for tags */
	public static final String PARAMETER_GAME_SCORE_TAGS = "tagScore";
	
	/** The final score */
	public static final String PARAMETER_GAME_SCORE_FINAL = "finalScore";
	
	/** Indicates if the user was allowed to create a new game*/
	public static final String PARAMETER_GAME_CREATION_ERROR = "gameCreationError";
	
	
	/** the name of the parameter indicating what kind of popular things should be listed */
	public static final String PARAMETER_POPULAR = "popular";
	
	/** the name of the parameter indicating what kind of random things should be listed */
	public static final String PARAMETER_RANDOM = "random";
	
	/** the name of the parameter indicating what kind of random things should be listed */
	public static final String PARAMETER_LATEST = "latest";
	
	//values:
	
	/** value for parameter {@link VIEW_VOCABULARY#PARAMETER_POPULAR}, etc. that indicate that popular/random/latest groups should be listed */
	public static final String GROUPS = "groups";
	
	/** indicates that the user wants tu search for groups */
	public static final String SEARCH_FOR_GROUPS = "groupsearch";
	
	/** indicates that the user wants tu search for resources */
	public static final String SEARCH_FOR_RESOURCES = "resourcesearch";
	
	/** indicates that the user wants tu search for groups and resources */
	public static final String SEARCH_FOR_GROUPS_AND_RESOURCES = "grsearch";
	
	/** indicates that the user wants tu search for users */
	public static final String SEARCH_FOR_USERS = "usersearch";
	
	
	/* STATUS MESSAGE PARAMETER NAMES */
	
	/** parameter name of status message as result of the registration */
	public static final String STATUS_REGISTRATION = "registrationstatus";
	
	/** parameter name of status message as result of the login */
	public static final String STATUS_LOGIN = "loginstatus";
	
	/** parameter name of status message for messages of the Spring Group Controller */
	public static final String STATUS_GROUP_MANAGEMENT = "loginstatus";
	
	/** parameter name of status message for search results */
	public static final String STATUS_SEARCH = "searchstatus";
	
	
	
	/* VALUES OF ACTION PARAMETER OR URL PATTERNS THAT INDICATE AN ACTION*/
	
	/** filename ending of views that cause an action (e.g. *.html might cause a certain controller to do something) */
	private static final String ACTION_ENDING = ".do";
	
	/** URL pattern which redirects the user to the welcome page */
	public static final String ACTION_WELCOME = "welcome" + ACTION_ENDING;
	
	/** URL pattern which redirects the about page */
	public static final String ACTION_ABOUT = "about" + ACTION_ENDING;
	
	/** URL pattern which redirects the user to GroupMe! home (= dash board which lists user's groups, etc.) */
	public static final String ACTION_HOME = "home" + ACTION_ENDING;
	
	/** URL pattern which redirects the user to GroupMe! help */
	public static final String ACTION_HELP = "help" + ACTION_ENDING;
	
	/** URL pattern which should cause a login action */
	public static final String ACTION_LOGIN = "login" + ACTION_ENDING;
	
	/** URL pattern which should cause a login action from the GroupMe! header*/
	public static final String ACTION_HEADER_LOGIN = "loginbyheader" + ACTION_ENDING;
	
	/** URL pattern which should cause a logout action */
	public static final String ACTION_LOGOUT = "logout" + ACTION_ENDING;
	
	/** URL pattern which should allow the user to create a GroupMe! account */
	public static final String ACTION_REGISTRATION = "register" + ACTION_ENDING;
	
	/** URL pattern which should allow the user to modify his GroupMe! account */
	public static final String ACTION_MODIFY_ACCOUNT = "modify" + ACTION_ENDING;
	
	/** URL pattern which indicates that the user wants to create a new group */
	public static final String ACTION_CREATE_GROUP = "create-group" + ACTION_ENDING;
	
	/** URL pattern which indicates that the user wants to show a group */
	public static final String ACTION_SHOW_GROUP = "show-group" + ACTION_ENDING;
	
	/** URL pattern which indicates an internal GrpoupMe! search */
	public static final String ACTION_SEARCH = "search" + ACTION_ENDING;
	
	/** URL pattern which indicates GroupMe! group browsing*/
	public static final String ACTION_BROWSE_GROUPS = "browse-groups" + ACTION_ENDING;
	
	/** URL pattern which indicates admin stuff */
	public static final String ACTION_ADMIN = "admin" + ACTION_ENDING;
	
	/** URL pattern which indicates admin stuff */
	public static final String ACTION_ADMIN_CONTEXTPATH = "/admin";
	
	/** URL pattern which indicates GroupMe! export*/
	public static final String ACTION_EXPORT = "export" + ACTION_ENDING;
	
	/** URL pattern which indicates a GroupMe! Resource view*/
	public static final String ACTION_VIEW_RESOURCE = "view-resource" + ACTION_ENDING;
	
	/** URL pattern which indicates a GroupMe! small resource view*/
	public static final String ACTION_VIEW_RESOURCE_SMALL = "viewresource_small" + ACTION_ENDING;
	
	/** URL pattern which indicates that a resource should be added to a Group*/
	public static final String ACTION_ADD_TO_GROUP = "addToGroup" + ACTION_ENDING;
	
	/** URL pattern which indicates that a resource should be managed within the GroupMe! system (user has clicked on the bookmarklet button) */
	public static final String ACTION_ADD_TO_GROUPME_SYSTEM = "addToGroupMe" + ACTION_ENDING;
	
	/**login via Bookmarklet */
	public static final String ACTION_LOGIN_VIA_BOOKMARKLET = "login-via-bookmarklet";
	
	/** remove resource from Resource Queue */
	public static final String ACTION_REMOVE_RESOURCE_FROM_QUEUE = "removeFromQueue" + ACTION_ENDING;
	
	/** Join a game from the game queue*/
	public static final String ACTION_JOIN_GAME_FROM_QUEUE= "joinGameFromQueue" + ACTION_ENDING;
	
	/** Create an own game for the queue*/
	public static final String ACTION_CREATE_OWN_GAME = "createOwnGame" + ACTION_ENDING;
	
	/** Start an own game when ppl is rdy */
	public static final String ACTION_START_GAME = "startGame" + ACTION_ENDING;
	
	/** Start an own game when ppl is rdy */
	public static final String ACTION_VIEW_GAMERESULTS= "gameresults" + ACTION_ENDING;
	
	/* VIEW INDICATORS THROWN BY THE CONTROLLERS */
	
	/** points the user to the welcome page */
	public static final String VIEW_WELCOME = "welcome";
	
	/** points the user to his personal GroupMe! home */
	public static final String VIEW_HOME = "home";
	
	/** indicates that the user has registered successfully */
	public static final String VIEW_SUCCESSFUL_REGISTRATION = "registered";
	
	/** indicates that the user has logged in successfully */
	public static final String VIEW_SUCCESSFUL_LOGGED_IN = "loggedin";

	/** indicates that the user login has failed */
	public static final String VIEW_LOGIN_FAILED = "loginfail";

	/** registration failed for some reason (e.g. username already exists) */
	public static final String VIEW_REGISTRATION_FAILED = "registrationfail";
	
	/** indicates that the user wants to register or change her account */
	public static final String VIEW_REGISTER = "register";
	
	/** indicator for the user view (an arbitrary user - this view corresponds to the resource view..) */
	public static final String VIEW_USER = "userview";
	
	/** indicator for the group view */
	public static final String VIEW_GROUP = "groupview";
	
	/** indicator for the group browsing view */
	public static final String VIEW_BROWSE_GROUPS = "browsegroups";
	
	/** indicator for the group browsing view optimized for an iFrame */
	public static final String VIEW_GROUP_AS_IFRAME = "group-as-iframe";
	
	/** indicator for the group editing view  optimized for an iFrame */
	public static final String VIEW_GROUP_EDIT_AS_IFRAME = "edit-group-in-iframe";
	
	
	/** indicator for the resource view */
	public static final String VIEW_RESOURCE = "viewresource";
	
	/** indicator for the smallresource view */
	public static final String VIEW_RESOURCE_SMALL = "viewresource_small";
	
	/** indicates that the creation of the group failed */
	public static final String VIEW_GROUP_CREATION_FAILED = "groupcreationfailure";
	
	/** indicator for the GroupMe Game Playing View*/
	public static final String VIEW_PLAY_A_GAME = "play";
	
	/** indicator for the GroupMe Game Waiting For Teammate View*/
	public static final String VIEW_WAITING_FOR_TEAM = "waiting";
	
	/** indicator for the Looking for a GroupMe Game View*/
	public static final String VIEW_GAME_OVERVIEW = "gameoverview";
	
	/** indicator for the Looking for a GroupMe Game Result View*/
	public static final String VIEW_GAME_RESULTS = "gameresults";
	
	/** indicator for the search (result) view */
	public static final String VIEW_SEARCH = "search";
	
	/** indicator for the admin view */
	public static final String VIEW_ADMIN = "admin";
	
	/** view indicator that is associated to the JSP which allows to add resources to a group via the Bookmarklet-Button */
	public static final String VIEW_ADD_TO_GROUP_VIA_BOOKMARKLET = "add-via-bookmarklet";
	
	/** view that is presented the user if adding of resource was successful */
	public static final String VIEW_ADD_TO_GROUP_VIA_BOOKMARKLET_WAS_SUCCESSFUL = "add-via-bookmarklet-successful";
	
	/** view that is presented the user if adding of resource from the resource queue was successful */
	public static final String VIEW_ADD_OR_REMOVE_FROM_RESOURCEQUEUE_WAS_SUCCESSFUL = "add-via-resource-queue-successful";
	
	/** view that is presented the user if adding of resource from the resource queue failed */
	public static final String VIEW_ADD_TO_GROUP_VIA_RESOURCEQUEUE_FAILED = "add-via-resource-queue-failed";
	
	public static final String VIEW_REGISTRATION_FAILED_DUPLICATED_USER = "duplicateuser";
	
	public static final String VIEW_REGISTRATION_FAILED_NO_PW = "nopasswordatregistration";

	/** view indocator that effects redirecting to the general error page */
	public static final String VIEW_GENERAL_ERROR = "error";
	
	
	/* My personal GroupMe! */
	
	/** points the user to his resource queue (= resources that have not been added to a group yet) */
	public static final String VIEW_MYRESOURCE_QUEUE = "queue";
	
	/** queue action: move resource from queue to group(s) */
	public static final String MYGROUPME_QUEUE_MOVE_RESOURCE = "move";
	
	/** points the user to the view where he can add a resource from the resource queue (= resources that have not been added to a group yet) to a group */
	public static final String VIEW_ADD_RESOURCE_FROM_MYRESOURCE_QUEUE_TO_A_GROUP = "move";
	
	/** points the user to his personal GroupMe! home, showing his groups */
	public static final String VIEW_MYGROUPS = "groups";
	
	/** points the user to his personal GroupMe! home, showing resources and groups she annotated */
	public static final String VIEW_MYSEARCH = "tag";
	
	/** points the user to his personal GroupMe! home, showing his tags */
	public static final String VIEW_MYTAGS = "tags";
	
	/** points the user to his personal GroupMe! home, showing his subscriptions */
	public static final String VIEW_SUBSCRIPTIONS= "favorites";
	
	/** points the user to his personal GroupMe! home, showing the dashboard*/
	public static final String VIEW_DASHBOARD= "dashboard";

	/** points the user to his personal GroupMe! home, showing his searchresult */
	public static final String VIEW_SEARCH_RESULT= "searchresult";
	
	/** points the user to his personal GroupMe! home showing the latest groups*/
	public static final String VIEW_LATEST = "latestgroups";
	
	/** indicates that a list should be sorted alphabetically desc*/
	public static final String SORT_ALPHA_DESC= "adesc";
	
	/** indicates that a list should be sorted alphabetically asc*/
	public static final String SORT_ALPHA_ASC= "aasc";
	
	/** indicates that a list should be sorted by timestamp asc*/
	public static final String SORT_TAD_ASC= "tadasc";
	
	/** indicates that a list should be sorted by timestamp desc*/
	public static final String SORT_TAD_DESC= "taddesc";
	
	/** points the user to his personal GroupMe! home, showing his groups */
	public static final String VIEW_CREATE_NEW_GROUP = "create-new-group";
	
	
	
	/* BEAN NAMES */

	/** the user manager which encapsulates the actual user */
	public static final String USER_MANGER = "userManager";

	/** the resource aggregation controller which also stores the last search request */
	public static final String RESSOURCE_AGGREGATION = "ajaxResourceAggregationController";
	
	/** the group manager which encapsulates the actual group */
	public static final String GROUP_MANGER = "groupManager";
	
	/** the GroupMe search manager which encapsulates the GroupMe search engine */
	public static final String GROUPME_SEARCH_MANGER = "searchManager";
	
	/** the GroupMe! search engine */
	public static final String GROUPME_SEARCH_ENGINE = "groupmeSearchEngine";

	/** the AdminManager bean */
	public static final String ADMIN_MANGER = "adminManager";
	
	/* SPECIAL BEANS */
	
	/** the name of the group search result object contained within the ModelAndView */
	public static final String SEARCH_RESULT_GROUPS = "searchResultGroups";
	
	/** the name of the resources search result object contained within the ModelAndView */
	public static final String SEARCH_RESULT_RESOURCES = "searchResultResources";
	
	/** the name of the search result object (no differntiation between groups and resources) contained within the ModelAndView */
	public static final String SEARCH_RESULT_LIST = "searchResultList";
	
	/** the name of the filtered search result object (no differntiation between groups and resources) contained within the ModelAndView */
	public static final String FILTERED_SEARCH_RESULT_LIST = "filteredSearchResultList";
	
	/** the name of the parameter containing a resource object within the ModelAndView */
	public static final String PARAMETER_RESOURCE = "resource";

	/** Name of the Cookie containing the password */
	public static final String PARAMETER_KEEP_PERMANENT_LOGGED_IN = "permanent-loggedin";
	
	/* COOKIE NAMES */
	
	/** Name of the Cookie containing the session ID */
	public static final String COOKIE_SESSION = "groupme-session";
	
	/**Lifetime of the Cookie containing the session ID (actual value: 1 hour = 3600 seconds)*/
	public static final int COOKIE_SESSION_LIFETIME = 3600;
	
	
	/**Lifetime of the Cookie containing the permanent login status (actual value: 2 weeks = 1209600 seconds)*/
	public static final int COOKIE_PERMANENT_LOGIN_LIFETIME = 1209600;
	
	/** Name of the Cookie containing the username */
	public static final String COOKIE_PERMANENT_LOGIN_USER_ID = "groupme-user";
	
	/** Name of the Cookie containing the password hash */
	public static final String COOKIE_PERMANENT_LOGIN_CREDENTIAL = "groupme-credential";
	
	/** Name of the Cookie containing the password */
	public static final String COOKIE_FOR_USER_TRACKING = "groupme-general";
	
	/* URI RESOLVING */
	
	/** the general indicator for an URI pattern */
	public static final String REQUEST_URI_PATTERN = "uri";
	
	/** the name of the parameter containing the type of the requested object */
	public static final String REQUEST_TYPE = "type";
	
	/** the name of the parameter containing the id of the requested object */
	public static final String REQUEST_TYPE_ID = "id";
	
	/** the requested object is a resource */
	public static final String REQUEST_TYPE_RESOURCE = "resource";
	
	/** the requested object is a resource with small view */
	public static final String REQUEST_TYPE_RESOURCE_SMALL = "resource_small";
	
	/** the requested object is a group*/
	public static final String REQUEST_TYPE_GROUP = "group";
	
	/** the requested object is a user*/
	public static final String REQUEST_TYPE_USER = "user";
	
	/** URL pattern that indicates a request for a group: http://groupme.org/GroupMe/group/ */
	public static final String RESTful_GROUP_URI_PATTERN = GROUPME_BASE_URL + "group/";
	
	/** URL pattern that indicates a request for a resource: http://groupme.org/GroupMe/resource/ */
	public static final String RESTful_RESOURCE_URI_PATTERN = GROUPME_BASE_URL + "resource/";

	/** URL pattern that indicates a request for a tag: http://groupme.org/GroupMe/tag/ */
	public static final String RESTful_TAG_URI_PATTERN= GROUPME_BASE_URL + "tag/";
	/** partial URL pattern that indicates a request for a tag: http://groupme.org/GroupMe/tag/ */
	public static final String RESTful_TAG_URI_PATTERN_PARTIAL = "tag/";
	
	/** URL pattern that indicates a request for a tag: http://groupme.org/GroupMe/user/ */
	public static final String RESTful_USER_URI_PATTERN= GROUPME_BASE_URL + "user/";
	/** partial URL pattern that indicates a request for a tag: http://groupme.org/GroupMe/user/ */
	public static final String RESTful_USER_URI_PATTERN_PARTIAL= "user/";
	
	/** URL pattern that indicates that a user wants to edit something, e.g.: http://groupme.org/GroupMe/group/142/edit */
	public static final String RESTful_EDIT_PATTERN= "/edit";
	
	/** URL pattern that indicates a request for popular groups: http://groupme.org/GroupMe/popular/groups */
	public static final String RESTful_POPULAR_GROUPS_URI_PATTERN= GROUPME_BASE_URL + "popular/groups";
	/** partial URL pattern that indicates a request for popular groups: http://groupme.org/GroupMe/popular/groups */
	public static final String RESTful_POPULAR_GROUPS_URI_PATTERN_PARTIAL= "popular/groups";
	
	/** URL pattern that indicates a request for random groups: http://groupme.org/GroupMe/random/groups */
	public static final String RESTful_RANDOM_GROUPS_URI_PATTERN= GROUPME_BASE_URL + "random/groups";
	/** partial URL pattern that indicates a request for random groups: http://groupme.org/GroupMe/random/groups */
	public static final String RESTful_RANDOM_GROUPS_URI_PATTERN_PARTIAL=  "random/groups";
	
	/** URL pattern that indicates a request for latest groups: http://groupme.org/GroupMe/latest/groups */
	public static final String RESTful_LATEST_GROUPS_URI_PATTERN= GROUPME_BASE_URL + "latest/groups";
	/** partial URL pattern that indicates a request for latest groups: http://groupme.org/GroupMe/latest/groups */
	public static final String RESTful_LATEST_GROUPS_URI_PATTERN_PARTIAL =  "latest/groups";
	
	/** URL pattern that indicates a request for user's favorites groups: http://groupme.org/GroupMe/home/favorites */
	public static final String RESTful_MyGroupMe_FAVOURITES= GROUPME_BASE_URL + "home/favorites";
	
	/** URL pattern that indicates a request for user's dashboard: http://groupme.org/GroupMe/home/dashboard */
	public static final String RESTful_MyGroupMe_DASHBOARD= GROUPME_BASE_URL + "home/dashboard";
	
	/** URL pattern that indicates a request for user's groups: http://groupme.org/GroupMe/home/groups */
	public static final String RESTful_MyGroupMe_GROUPS = GROUPME_BASE_URL + "home/groups";
	
	/** URL pattern that indicates a request for user's groups: http://groupme.org/GroupMe/home/groups */
	public static final String RESTful_MyGroupMe = GROUPME_BASE_URL + "home/";
	
	/** URL pattern that indicates a request for user's queue: http://groupme.org/GroupMe/home/queue */
	public static final String RESTful_MyGroupMe_QUEUE = GROUPME_BASE_URL + "home/queue";	
	
	/** URL pattern that indicates a request for user's queue: moving resource into a group */
	public static final String RESTful_MyGroupMe_MOVE_RESOURCE = GROUPME_BASE_URL + "home/queue/move/";
	
	/** URL pattern that indicates a request for user's tags: http://groupme.org/GroupMe/home/tags */
	public static final String RESTful_MyGroupMe_TAGS = GROUPME_BASE_URL + "home/tags";	
	
	/** URL pattern that indicates a request for searching for resourcs the user tagged: http://groupme.org/GroupMe/home/tag/TAG_TO_SEARCH_WITH */
	public static final String RESTful_MyGroupMe_TAG_SEARCH = GROUPME_BASE_URL + "home/tag/";	
	
	/** URL pattern that indicates a request for user's account settings: http://groupme.org/GroupMe/home/account */
	public static final String RESTful_ACCOUNT = GROUPME_BASE_URL + "home/account";
	/** partial URL pattern that indicates a request for user's account settings: http://groupme.org/GroupMe/home/account */
	public static final String RESTful_ACCOUNT_PARTIAL = "home/account";
	
	/** URL pattern that indicates a request for user's account settings: http://groupme.org/GroupMe/home/register */
	public static final String RESTful_REGISTER = GROUPME_BASE_URL + "home/register";
	/** partial URL pattern that indicates a request for user's account settings: http://groupme.org/GroupMe/home/register */
	public static final String RESTful_REGISTER_PARTIAL =  "home/register";
	
	/** URL pattern that indicates a request for creating a new group: http://groupme.org/GroupMe/home/create-new-group */
	public static final String RESTful_CREATE_NEW_GROUP = GROUPME_BASE_URL + "home/create-new-group";
	
	/** partial URL pattern that indicates that someone wants to add a user as contributer for a specific group: http://groupme.org/GroupMe/group/[ID]/add-contributor */
	public static final String RESTful_MANAGE_CONTRIBUTORS_URI_PATTERN_PARTIAL = "manage-contributors";
}
